package com.dingreading.cloud.app.service;

import com.alibaba.fastjson.JSONObject;
import com.dingreading.cloud.app.entity.Stores;
import com.dingreading.cloud.common.util.PageDto;
import com.dingreading.cloud.common.util.PageUtil;
import com.mybatisflex.core.service.IService;

import java.util.List;

/**
 * 服务层。
 *
 * @author Administrator
 * @since 2023-11-22
 */
public interface StoresService extends IService<Stores> {

    PageDto<JSONObject> pageList(PageUtil pageUtil, String corpUid, String keyword, Integer operateStatus, Integer enabled);

    Stores getByUid(String uid);

    List<Stores> getByUids(List<String> uids);

    // 获取公司下的门店
    List<Stores> getByCorpUid(String corpUid, Integer enabled);

    List<Stores> getByCorpUidAndEnabled(String corpUid);

    // 获取公司下的其他门店信息
    List<Stores> getCorpOtherStores(String corpUid, String storeUid);

    boolean updateLatAndLng(String storeUid, String latitude, String longitude);

    // 获取经纬和纬度范围内的门店
    List<Stores> getByLatAndLngNotUid(String storeUid, String latitudeMin, String latitudeMax, String longitudeMin, String longitudeMax);

    // 获取所有门店的经纬度
    List<Stores> getStoreMarker();

    List<Stores> getByKeywordAndEnable(String keyword, Integer enabled);

    // 设置运营人员
    boolean updateOperateInfo(String storeUid, String operateStaffUid, String operateStaffName, String operateStaffPhone);

    Stores getByCorpUidAndStoreUid(String corpUid, String storeUid);

}
